component accessors="true" extends="com.firemoss.atonement.test.mapper.objects.Convenience" alias="com.firemoss.atonement.test.mapper.objects.AddressDTO"
{
		property name="line1" type="string";
		property name="addressAsOneLine" type="string" valueResolver="com.firemoss.atonement.test.mapper.objects.AddressDTO" valueResolutionFunction="oneLineAddress";
		property name="line2" type="string";
		property name="city" type="string";
		property name="state" valueResolver="com.firemoss.atonement.test.mapper.objects.AddressDTO" valueResolutionFunction="stateCode" sourcePropertyName="state";
		property name="postalCode" type="string";
		
		public function oneLineAddress ( source, targetProperty, mapping, mappingChain ) {
			return source.getLine1() & " " & source.getLine2();
		} 
		
		public function stateCode ( source, targetProperty, mapping, mappingChain ) {
			return source.getCode();
		} 
		
}
